"""
Author        yongfa
Date          2022-02-18 11:24:57
LastEditTime  2023-08-01 17:18:05
LastEditors   yongfa
Description   gunicorn 配置文件
"""


import multiprocessing
import os

bind = "0.0.0.0:5000"
backlog = 512  # 监听队列
# chdir = '/usr/src/app'  # gunicorn要切换到的目的工作目录
pidfile = './logs/gunicorn.pid'
workers = 2

# 设置守护进程【关闭连接时，程序仍在运行】
# daemon = True
timeout = 30  # 超时
loglevel = 'info'  # 日志级别，这个日志级别指的是错误日志的级别，而访问日志的级别无法设置
preload_app = False


# 自动重启
if os.getenv('APP_SETTINGS') == 'prod':
    debug = False
    loglevel = 'warn'
    # preload_app = True
    worker_class = 'gevent'  # 使用gevent模式，还可以使用sync 模式，默认的是sync模式
    workers = multiprocessing.cpu_count() * 2 + 1  # 进程数
    threads = multiprocessing.cpu_count() * 2  # 指定每个进程开启的线程数

    # 日志
    accesslog = "./logs/gunicorn.access.log"
    errorlog = "./logs/gunicorn.error.log"
